# Mesin Smart Query — dependensi runtime
duckdb==1.5.5
fastapi==0.118.0
uvicorn[standard]==0.37.0
httpx==0.28.1
pydantic==2.11.9
openpyxl==3.1.5
jinja2==3.1.6
psycopg[binary]==3.2.10

# --------------------------------------------------------------------------
# Tumpukan ilmiah Python. Ditambahkan 13 September 2026 atas keputusan pemilik.
#
# Repo ini semula sengaja TANPA scipy — fungsi gamma dan beta ditulis tangan di
# `statistik.py` demi menjaga daftar ini pendek. Keputusan itu benar untuk
# NOC-QIA yang hanya butuh satu fungsi; ia tidak lagi benar untuk produk
# statistik penelitian, tempat ANOVA, regresi logistik, moderasi-mediasi, dan
# deret waktu semuanya menunggu di balik pustaka ini.
#
# Yang TIDAK berubah karena penambahan ini: prosedur tetap TERKUNCI. scipy
# memberi `ttest_ind`, bukan gerbang asumsi, bukan penunjuk baris mana yang
# harus dibaca, bukan tabel konvensi SPSS, dan bukan jejak kode yang dapat
# dijalankan ulang. Pustaka dipakai untuk KEMAMPUAN dan SILANG-PERIKSA, bukan
# untuk menggantikan yang sudah terbukti.
#
# `test_silang_ilmiah.py` menjalankan silang-periksa itu di setiap suite.
numpy==2.5.3
pandas==3.0.5
scipy==1.18.1
statsmodels==0.15.0
# Data panel (Pooled/FE/RE). Dependensinya sudah ada seluruhnya di atas;
# yang bertambah hanya pyhdfe (19 KB) dan mypy_extensions (5 KB).
linearmodels==7.0
matplotlib==3.11.2
seaborn==0.13.2

# --------------------------------------------------------------------------
# Ekspor Word berformat APA (14 September 2026). python-docx menulis .docx;
# lxml adalah dependensinya. Dipilih alih-alih menulis OOXML sendiri: format
# yang ditolak Word baru ketahuan di mesin pengguna, sementara pustaka ini
# teruji luas. Keputusan penyajian APA tetap di `keluaran/apa.py`.
python-docx==1.2.0
lxml==6.1.3
